<?php
/**
* Controlador que maneja las acciones relacionadas con el inicio y cierre de sesion 
*/
class SesionController extends Controller 
{
	public function actions()
		{
			return array(
				//captcha action renders the CAPTCHA image displayed on the contact page
				'captcha'=>array(
					'class'=>'CCaptchaAction',
					'backColor'=>0xFFFFFF,
				),
				//page action renders "static" pages stored under 'protected/views/site/pages'
				//They can be accessed via: index.php?r=site/page&view=FileName
				'page'=>array(
					'class'=>'CViewAction',
				),
			);
		}
   /*
   *Accion correspondiente al login del usuario
   */
   public function actionLogin(){
	 $model=new LoginForm;
	// si se trata de solicitud de validacion 
	if(isset($_POST['ajax']) && $_POST['ajax']==='login-form')
	{
		echo CActiveForm::validate($model);
		Yii::app()->end();
	}
	// recupera los datos de entrada del usuario
	if(isset($_POST['LoginForm']))
	{
		$model->attributes=$_POST['LoginForm'];
		// valida datos entrada del usuario y redirecciona a la pagina previa luego de la validacion
		if($model->validate() && $model->login()){
		    $this->IniciarSistema($model->sucursal);
			$this->redirect(Yii::app()->user->returnUrl);
	}
	}
	// display del formulario login 
	$this->render('login',array('model'=>$model));
   
   }
   
    /*
   	*Accion que permite cerrar sesion
	*/
	public function actionLogout()
	{
	    //Limpia las variables de sesion creadas 
	    Yii::app()->session->clear();
		Yii::app()->user->logout();
		$this->redirect(Yii::app()->homeUrl);
	}
	
	/*
	*Accion que permite recuperar contraseña al usuario
	*/
	public function actionRecuperacion(){
	 // $model=new RecuperacionForm('insert');
	 // $msg='';
	 // if(isset($_POST['RecuperacionForm'])){
	    // $model->attributes=$_POST['RecuperacionForm'];
		// if(!$model->validate()){
		 // $msg="<strong class='text-error'>Error al enviar el formulario</strong>";
		// }
		// else{
		 // busca usuario y mail en base
		// }
		// $mail=new EnviarEmail();
	 // }
	$this->render('recuperacion');
   }
   
  
   
   public function accessRules(){
	  return array(
		array('allow',
		  'actions'=>('captcha'),
		),
	  );
    }
}
?>